1. Field of the Invention
The present invention relates generally to an improved data processing system, and in particular to a computer-implemented method and apparatus for configuration management. Still more particularly, the present invention relates to a computer-implemented method, apparatus, and computer-usable program product for managing a system of configuration items according to a history of use.
2. Description of the Related Art
Owners of computer systems often modify and upgrade their computer systems to prolong the utility of the computer systems. The rate of technological advancement often renders computer systems outdated in a short amount of time. Further, hardware and software components of a computer system also may malfunction and require replacement. For example, a computer system may receive new components, old components may be replaced, new software applications may be installed, and existing software may be upgraded.
These components that may be modified or upgraded are referred to as configuration items. A configuration item is a component of a system that may be individually managed. For example, where the system is a computer system, a configuration item may be a printer, wireless keyboard, webcam, operating system, or a software application. Where the system is a network of computer systems, the individual computer systems may also be configuration items.
Management of configuration items in a system is often accomplished by utilizing system management products. A system management product is an application operable to initiate the performance of system management tasks from a central location. System management tasks are tasks that are performed for maintaining a system of configuration items. System management tasks may be, for example, scanning a system to identify existing configuration items, changing system configurations to adhere to company policies, and distributing software or other updates.
In some instances, the system management task may be the deployment of software applications to multiple computer systems. For example, a network of computer systems may require a software patch to fix a potential security breach. Rather than visiting each computer system individually, and manually loading the software patch to each computer, system administrators utilize a system management product to distribute the software patch to the various computer systems on the network.
Certain system management products are better suited for performing certain management tasks. Often, however, a system administrator has no readily available objective information to consider before assigning a system management task to a system management product. For example, a system administrator may rely upon trial and error to determine which system management products are better suited for particular management tasks. This method of assignment is inefficient, however, particularly where other system administrators lack similar access and knowledge of the use of system management products. In addition, changing system conditions and configuration items may alter the performance of system management products, thereby rendering useless any previously gained knowledge.
Furthermore, the assignment of management tasks to system management products is fixed. In other words, unless a system administrator reassigns a system management task to a different system management product, the management task is continually performed by that system management product. Over time, due to changes in the system conditions, the particular system management product may no longer be the preferred system management product for handling a management task. However, a system administrator may lack sufficient information to justify reassigning that management task to a different system management product. Consequently, the performance of management tasks in a system may be occurring in the least efficient manner.
The currently used method for assigning management tasks fails to take into consideration the changing conditions of a system that may affect the assignment of system management tasks to system management products. Furthermore, currently existing system management products lack the ability to assist a system administrator in assigning system management tasks to system management products.